Certain types of programming languages allow for eventing. Eventing provides a mechanism wherein certain occurrences at runtime of a computer program (called events) can trigger additional steps. For example, the Advanced Business Application Programming (ABAP) language includes such an eventing mechanism. Eventing mechanisms in current programming languages have fallen into two categories. The first involves assigning each event type to a dedicated function or method as a handler. Such a system requires that the creator of the programming language anticipate all the different event types that may be encountered by the program. The second involves utilizing remote function calls, which are remote execution of functions in an external system. In some systems, it is even possible to specify conditions under which the events should be received. These conditions are also known as “wait” conditions. However, due to the modular characteristics of some applications, it may be necessary that each layer express its interest in the consumption of event types while still being able to control the consumption order of queued events for the application. This is not possible using remote function calls.